export let theme  = {
  icons: {},
  addCustomIcon(name, icons, url) {
    uni.$x.theme.icons[name] = {
      icons,
      url,
    }
	},
  // #ifndef XT_PC
  ...{uniColorPrimary:"#14D1A6",uniColorInfo:"#2088F3",uniColorSuccess:"#4cd964",uniColorWarning:"#FFB64E",uniColorError:"#dd524d",uniTextColor:"#333",uniTextColorGrey:"#999",uniBgColor:"#f8f8f8",uniBorderColor:"#e3e3e3",uniFontSizeSm:"12px",uniFontSizeBase:"14px",uniFontSizeLg:"16px",uniSpacingSm:"5px",uniSpacingBase:"10px",uniSpacingLg:"15px",},
  // #endif
  // #ifdef XT_PC
  ...{uniColorPrimary:"#2088F3",uniColorInfo:"#8f939c",uniColorSuccess:"#4cd964",uniColorWarning:"#FFB64E",uniColorError:"#dd524d",uniTextColor:"#333",uniTextColorGrey:"#999",uniBgColor:"#f8f8f8",uniBorderColor:"#",uniFontSizeSm:"12px",uniFontSizeBase:"14px",uniFontSizeLg:"16px",uniSpacingSm:"5px",uniSpacingBase:"10px",uniSpacingLg:"15px",}
  // #endif
}

function setUView() {
  uni.$u.props.tabs.lineColor = theme.uniColorPrimary
  uni.$u.props.checkbox.activeColor = theme.uniColorPrimary
  uni.$u.props.radio.activeColor = theme.uniColorPrimary
  uni.$u.props.modal.confirmColor = theme.uniColorPrimary
  uni.$u.props.modal.cancelColor = theme.uniTextColor
  uni.$u.props.icon.size = theme.uniFontSizeBase
  uni.$u.props.icon.labelSize = theme.uniFontSizeBase

  uni.$u.props.switch.activeColor = theme.uniColorPrimary

  uni.$u.props.input.placeholderStyle = `'color: ${theme.uniTextColorGrey}'`
  uni.$u.props.input.fontSize = theme.uniFontSizeBase
  uni.$u.props.input.color = theme.uniTextColor
  // uni.$u.props.swift.cancelColor.default = theme.textBase;
  // uSelect.props.confirmColor.default = theme.uniColorPrimary;
  // uTab.props.activeColor.default = theme.primary;
  // uTab.props.fontSize.default = theme.fontSizeSmLg;
  // uSubsection.props.fontSize.default = theme.fontSizeSmLg;
  // uSubsection.props.bold.default = false;
  // uSubsection.props.activeColor.default = theme.textBase;
  // uSubsection.props.inactiveColor.default = theme.textLight;
  // uEmpty.props.marginTop.default = '100';
  // uEmpty.props.marginTop.default = '100';
  // uRate.props.activeColor.default = theme.primary;
  // uRate.props.inactiveColor.default = theme.textLight;
  // uCard.props.margin.default = theme.spacing;
  // uCard.props.padding.default = theme.spacingValue;
  // uIcon.props.color.default = 'inherit';
  // uIcon.props.size.default = '1em';
  // uIcon.props.labelSize.default = theme.fontSizeBase;
  // uPopup.props.borderRadius.default = '14';
  // uDropDown.props.activeColor.default = theme.primary;
  // uDropDown.props.inactiveColor.default = theme.textLight;
  // uSection.props.fontSize.default = theme.fontSizeLg;
  // uSection.props.bold.default = false;
}

function setElement() {

}

export let res = {
  // #ifndef APP-PLUS
  ilogo: require('@/static/logo.png'),
  // #endif
  // #ifdef APP-PLUS
  ilogo: '/static/logo.png', // eslint-disable-line no-dupe-keys
  // #endif
}

export default function($x, {
  themeExtend,
  resExtend,
}={}, app) {
  Object.assign(theme, themeExtend)
  $x.theme = theme

  Object.assign(res, resExtend)
  $x.res = res

  // #ifndef XT_PC
  setUView()
  // #endif
  // #ifdef XT_PC
  setElement()
  // #endif
}
